#ifndef __ACCEPTOR_H__
#define __ACCEPTOR_H__

#include "Socket.h"
#include "InetAddress.h"
#include <string>

using std::string;
// 实现一个接收器
class Acceptor
{
public:
  
    //构造函数根据ip 和 端口号绑定 Socket 对象 和 创建地址对象

    ~Acceptor();
    //销毁 无内存泄露

   //设置端口属性
    void ready();
    
    //地址复用
    void setReuseAddr();
    //端口复用

    void setReusePort();
    //绑定地址
    void bind();
    //监听套接字
    void listen();
    //接受连接
    int accept();
    
    int fd() const;

private:
    Socket _sock;
    
    InetAddress _addr;
};

#endif
